//*************************************************************************** // // Library: // FM_UTILS.DLL - version 1.1a // // Purpose: // FM_UTILS is a File Manager extension DLL. An extension DLL adds // a menu to File Manager, contains an entry point that processes menu // commands and notification messages sent by File Manager, and // queries data and information about the File Manager windows. The // purpose of an extension DLL is to add administration support // features to File Manager, for example, file and disk utilities. // Up to five extension DLLs may be installed at any one time. // // FM_UTILS adds a menu (called "Utilities" by default) to File Manager // and processes all the messages that are sent by File Manager to an // extension DLL. In order to retrieve any information, it sends // messages to File Manager. // // Usage: // File Manager installs the extensions that have entries in the // [AddOns] section of the WINFILE.INI initialization file. An entry // consists of a tag and a value. To load FM_UTILS.DLL as a File // Manager extension, add the following to WINFILE.INI (assuming the // DLL resides in c:\win\system): // // [AddOns] // FM_Utils Extension=fm_utils.dll // // In addition, a section specific to this Extension DLL is added to // WINFILE.INI. There are several elements to this section: // For each utility to appear on the menu, there is a 'UserProgn=' tag, // and a 'UserDescn=' tag. Comments (preceded by semicolons) are optional. // You may have up to twenty separate utilities specified. // You can also specify up to five utilities to load at the same time as // FileMan, and exit when you close FileMan. You use the 'PreLoadn=' // tag for this. All of the utilities are started with the SW_SHOWMINNOACTIVE // setting (minimized, but not activated). // And, you can specify the name of the added menu. If you choose not to, // the default is "&Utilities". This provides foreign language support, // as well as allowing you to use a very short name, to keep the menu bar // from growing too long. The tag to use is 'UserMenuName='. // // [FM_Utils Extension] // ;Name the menu // UserMenuName=&Util // ;add Upper Deck Editor to menu // UserDesc1=&Edit File(s) // UserProg1=D:\UDE\UDE.EXE // ;add V. Buerg's LIST to menu // UserDesc2=&View File(s) // UserProg2=LIST.PIF // ;PreLoad Trash Can // PreLoad1=TRASH.EXE // // Revision History: // 1.0 - March '92 - initial release // // 1.1 - April '92 - added ability to PreLoad utilities. This seems even // more popular than the original DLL. // // 1.1a - August '92 - added ability to specify menu name; changed // SendMessage(...WM_CLOSE...) to PostMessage(...WM_CLOSE...) // since it seemed to make more sense. // // Notes: // Portions of the base code for this utility is based on, and borrowed // from, the XTENSION sample code provided with the Microsoft Windows // 3.1 SDK. // // FM_UTILS attempts to close any auto-started utilities by posting a // WM_CLOSE to it's main window. There's no guarantee that this method // will work for *all* programs. If you know of a better way to handle // this situation, I'd be *really* happy to hear about it. // // While it's not properly documented anywhere, it seems that the maximum // command line to pass to WinExec() is 128 characters. Since we have to // pass in complete pathnames for all files in order for this to work, // we may not be able to pass *all* selected file names. // // Copyright (c) 1992 by Brad P. Smith - all rights reserved // // snail: R.R. #2 - 777 Crozier Rd. // Oxford Mills, Ontario, CANADA // K0G 1S0 // E-Mail: 'B.P.Smith' on BIX, or 'B.P.Smith@BIX.com' on Internet // // This utility DLL is FreeWare. Don't let *anybody* charge you // for it. // However, I would *really* appreciate hearing from you if you find // FM_UTILS useful. Drop me a postcard or E-mail. I could use the moral // support. :-) // //***************************************************************************